package com.bbva.cbm.web.servlet.spring.reporte;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.springframework.web.servlet.ModelAndView;

import ejb.com.bbva.cbm.util.Constante;
import ejb.com.bbva.cbm.util.DatosExportacion;
import ejb.com.bbva.cbm.util.Parametro;

public class FaltanteSobranteController extends ReporteController {

	public FaltanteSobranteController() {
		super(Constante.REPORTE_FALTANTES_SOBRANTES,"reporte_faltante_sobrantes", "Faltantes y Sobrantes");
		action="rptFaltanteSobrante";
	}
	
	public ModelAndView exportar(HttpServletRequest request,HttpServletResponse response) {
		Parametro parametro=null;
		try {
			parametro=getParameter(request,response);			
			DatosExportacion datos = getDatosExportacion(request,response);			
			datos.setFiltros(
				new String[][] {
					{"Oficina",getOficina(parametro,request)},
					{"Terminal",getTerminal(parametro,request)},
					{"Motivo",getMotivo(parametro,request)},
					{"Divisa",getDivisa(parametro,request)}
				}
			);						
			parametro.setDatosExportacion(datos);			
			reporteService.generarReporteFaltanteSobrante(parametro);
		} catch (Exception e) {
			e.printStackTrace();logger.error(e);
		}
		
		return null;
	}
	
	@Override
	public ModelAndView listar(HttpServletRequest request, HttpServletResponse response){
		try{
			parametro=getParameter(request, response);
			numeroRegistros=reporteService.contarReporteFaltanteSobrante(parametro);
			lstResultadoConsulta=reporteService.listarReporteFaltanteSobrante(parametro);			
		}catch (Exception e) {
			guardarMensajeError(request, e);
		}
		return super.listar(request, response);
	}
}
